std::literals::chrono_literals:: operator""y
|
Definido en el encabezado
<chrono>
|
||
|
constexpr
std::
chrono
::
year
operator
""
y
(
unsigned
long
long
y
)
noexcept
;
|
(desde C++20) | |
Forma un literal std::chrono::year que representa un año en el calendario gregoriano proléptico .
Contenidos |
Parámetros
| y | - | el valor del año |
Valor de retorno
Un
std::chrono::year
inicializado desde
int
(
y
)
. Si
y
no está en el rango
[
-
32767
,
32767
]
, el valor almacenado no está especificado.
Implementación posible
constexpr std::chrono::year operator""y(unsigned long long y) noexcept { return std::chrono::year(static_cast<int>(y)); } |
Notas
Este operador se declara en el espacio de nombres std :: literals :: chrono_literals , donde tanto literals como chrono_literals son espacios de nombres en línea . Se puede acceder a este operador mediante:
- using namespace std :: literals ,
- using namespace std :: chrono_literals , o
- using namespace std :: literals :: chrono_literals .
Además, dentro del espacio de nombres std :: chrono , la directiva using namespace literals :: chrono_literals ; es proporcionada por la biblioteca estándar , de modo que si un programador utiliza using namespace std :: chrono ; para obtener acceso a las clases en la biblioteca chrono , los operadores literales correspondientes también se vuelven visibles.
Ejemplo
#include <chrono> #include <iostream> int main() { using namespace std::literals; std::cout << int(2020y) << '\t' << 2020y << '\n' << int(-220y) << '\t' << -220y << '\n' << int(3000y) << '\t' << 3000y << '\n' << int(32768y) << '\t' << 32768y << '\n' // unspecified << int(65578y) << '\t' << 65578y << '\n'; // unspecified }
Salida posible:
2020 2020 -220 -0220 3000 3000 -32768 -32768 is not a valid year 42 0042
Véase también
construye un
year
(función miembro pública de
std::chrono::year
)
|